This invention relates to the field of network analysis, and in particular to a system and method that facilitate the discovery of nodes along multiple paths of a network application, or between any two identified nodes, and the subsequent presentation of these multiple paths.
There are two common techniques used to determine the network layer path between a source node and a destination node, an ‘active’ technique that includes sending trace messages from the source node to the destination, and a ‘passive’ technique that includes sequentially investigating the configuration of the routers to determine the ‘next hop’ toward the destination.
U.S. Pat. No. 7,742,426, “SYSTEM, METHOD, AND COMPUTER-READABLE MEDIUM FOR DETERMINING A LAYER-2 TRACE IN A HETEROGENEOUS NETWORK SYSTEM”, issued 22 Jun. 2010 to Schumacher et al., discloses using a trace request to identify the network layer path between a pair of nodes, then finding the layer-2 devices along each of the identified links forming the path, and is incorporated by reference herein.
U.S. Pat. No. 7,293,106, “METHOD OF FINDING A PATH BETWEEN TWO NODES IN A NETWORK”, issued 6 Nov. 2007 to Natarajan et al. and incorporated by reference herein, discloses sequentially identifying each next hop based on routing tables, and identifying the data link layer devices along the hop based on a network topology database.
U.S. Pat. No. 7,760,735, “METHOD AND SYSTEM FOR DISCOVERING NETWORK PATHS”, issued 20 Jul. 2010 to Chen et al. and incorporated by reference herein, discloses querying network devices for their current configuration, including routing tables, and sequentially proceeding along the path identified by the next-hop information, using interface definitions at each device to identify the data link layer devices along the path.
In the above referenced parent application to this application, it is noted that while these prior art systems are effective for finding devices along a path between two nodes, they each rely on having access to certain features or capabilities that may or may not be available to a particular network manager. For example, the techniques based on trace information assume that the path between source and destination can be determined by the trace information, and the techniques based on routing information assume that the path between source and destination can be determined by the source information. To accommodate the situations where neither of these presumptions are applicable, the parent application to this application presents a ‘hybrid’ approach that, for example, attempts to use the simpler tracing approach until it fails, then switches to the routing approach to continue the path determination, then alternates and/or combines the two approaches, and others, until the path between the indicated source and destination nodes is determined.
The applicants have recognized a number of deficiencies associated with the aforementioned path determination techniques based on conventional trace information. In particular, an indicated path as reported by a trace report produced by the traditional ‘trace-route’ or ‘tracert’ commands may not, in fact, exist. Accordingly, performance statistics and other parameters developed based on these non-existent paths, which are often used to diagnose performance problems, may be meaningless, and often misleading.
In particular, if multiple paths exist between the source and destination, care must be taken in the analysis of performance related information to assure that the information is applicable to an actual path between the source and destination, and not a path that cannot be realized by the existing network.
It would be advantageous to be able to identify multiple paths between a source and destination based on conventional trace information. It would also be advantageous to distinguish feasible/actual paths between the source and destination from among the identified possible multiple paths. It would also be advantageous to present a display of the feasible/actual paths, with performance statistics associated with each path.
These advantages, and others, can be realized by a system and method that identifies the potential paths between a source and destination of a network based on trace-route information, then filters these paths based on ancillary information associated with the network to eliminate paths or links that are not supported by this ancillary information so as to identify feasible/actual paths between the source and destination. The ancillary information includes, for example, routing tables and ARP (Address Resolution Protocol) tables. If a feasible path cannot be identified based on the ancillary information, supplemental information regarding nodes further along the potential path is assessed to provide a basis for inferring the nodes that provide the path. The determined feasible paths are displayed for review, and provided to serve as filters for subsequent path-analysis tools.
Throughout the drawings, the same reference numerals indicate similar or corresponding features or functions. The drawings are included for illustrative purposes and are not intended to limit the scope of the invention.